Object oriented modeling has proven to be a useful and practical methodology in the design of data base applications. Because of its high level of abstraction, it allows the user to gain a deep insight within an application by concentrating on objects and relationships, rather than on the data base implementation. If an object oriented paradigm is incorporated in the Data Base Management System (DBMS) design process, the resulting DBMS is more robust, tracks integrity better, and is better documented. Once an object model is defined, a series of transformations can be performed to arrive at the data base schema.
Commonly assigned copending U.S. patent application Ser. No. 07/518,396 entitled "Object Diagram Compiler", filed May 8, 1990 now abandoned, describes a method for transforming object diagrams, which may be drawn by a system user on a graphics editor, into output commands in a structured query language (SQL) which can be used to load a data dictionary with schema information. Section I and Section II of the above-identified application provide a background for understanding object modeling and relational data bases respectively and are incorporated herein by reference. There is a need to reverse the process just described, i.e., start with an existing data base schema and arrive at an object model. This is important for several reasons. For existing data base applications, it would be useful to take advantage of object oriented paradigm. By performing the transformation from an existing data base schema to an object model, future modifications and enhancements to the data base design can be carried out on the object model. An object model of a data base allows one to gain a deeper understanding of the data base design by focusing on a high level construct of objects and their relationships, without the distraction of data base implementation details. Object models further ensure better data base integrity by identifying dangling pointers and duplicate references. This is especially important as an existing data base is modified and expanded. Finally, because object diagrams capture the application and problem at a high level, it is easier to detect inconsistencies between the application developer and the application user. Documentation and communication is thereby improved.